package com.guigu.pd.serviceapi.pojo;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

import java.io.Serializable;
import java.util.Date;
import lombok.Data;

/**
 * 快递员取件、派件任务信息表
 * 
 * @author deyran
 * @email deyran@gmail.com
 * @date 2022-07-19 19:31:34
 */
@Data
@TableName("pd_task_pickup_dispatch")
public class TaskPickupDispatchEntity implements Serializable {
	private static final long serialVersionUID = 1L;

	/**
	 * id
	 */
	@TableId
	private String id;
	/**
	 * 关联订单id
	 */
	private String orderId;

	/**
	 * 运单编号
	 */
	@TableField(exist = false)
	private String transportorderid;

	@TableField(exist = false)
	private Date ordercreatetime;
	/**
	 * 任务类型，1为取件任务，2为派件任务
	 */
	private Integer taskType;
	/**
	 * 任务状态，1为待执行（对应 待上门和须交接）、2为进行中（该状态暂不使用，属于保留状态）、3为待确认（对应 待妥投和须交件）、4为已完成、5为已取消
	 */
	private Integer status;

	/**
	 * 签收状态(1为已签收，2为拒收)
	 */
	private Integer signStatus;
	/**
	 * 网点ID
	 */
	private String agencyId;

	@TableField(exist = false)
	private String agencyname;
	/**
	 * 快递员ID
	 */
	private String courierId;

	// 快递员姓名
	@TableField(exist = false)
	private String courier;

	@TableField(exist = false)
	private String cphone;
	/**
	 * 预计开始时间
	 */
	private Date estimatedStartTime;
	/**
	 * 实际开始时间
	 */
	private Date actualStartTime;
	/**
	 * 预计完成时间
	 */
	private Date estimatedEndTime;
	/**
	 * 实际完成时间
	 */
	private Date actualEndTime;
	/**
	 * 确认时间
	 */
	private Date confirmTime;
	/**
	 * 取消时间
	 */
	private Date cancelTime;
	/**
	 * 任务分配状态(1未分配2已分配3待人工分配)
	 */
	private Integer assignedStatus;
	/**
	 * 备注
	 */
	private String mark;
	/**
	 * 任务创建时间
	 */
	private Date createTime;

	/**
	 * 发件人姓名
	 */
	@TableField(exist = false)
	private String sendername;

	/**
	 * 收件人姓名
	 */
	@TableField(exist = false)
	private String receivername;

	/**
	 * 发件人电话
	 */
	@TableField(exist = false)
	private String senderphone;

	/**
	 * 收件人电话
	 */
	@TableField(exist = false)
	private String receiverphone;
	/**
	 * 发件人地址
	 */
	@TableField(exist = false)
	private String senderaddress;

	/**
	 * 收件人地址
	 */
	@TableField(exist = false)
	private String receiveraddress;
}
